home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 1 (Walnut Creek)
/
Aminet - June 1993 [Walnut Creek].iso
/
aminet
/
mus
/
play
/
stp133.lha
/
STP.doc
< prev
next >
Wrap
Text File
|
1993-02-15
|
18KB
|
466 lines
******************************************************************************
*** ***
*** D.E.R. ST-Player V1.33 ***
*** ***
******************************************************************************
*** ***
*** ***
*** Implemented by: Wolfgang BREYHA ***
*** Großer Ring 42 ***
*** 1130 VIENNA ***
*** AUSTRIA ***
*** ***
*** ***
******************************************************************************
*** ***
*** This Program is FREEWARE and it may be freely distributed if: ***
*** ***
*** - The Program, it's Icon and the .doc-Files are all copied ***
*** together ***
*** - No Changes (except crunching) are made without ***
*** MY permission!!! ***
*** - your name is Fred Fish. (Please include it in your Library!!) ***
*** - saled only for prime cost+copy fee(5DM or 5US$) ***
*** (any disputes arising hereunder will be settled before a ***
*** competent Vienna court of law!!!) ***
*** ***
******************************************************************************
*** ***
*** ***
*** Come to: D.E.R. Computer-Club ***
*** Stiegerg. 5/1 ***
*** 1150 VIENNA ***
*** AUSTRIA ***
*** ***
*** ***
******************************************************************************
Before you use Player please read this:
---------------------------------------
I have worked almost 3 years on this code and i think it's a very nice
program. So I have a little request! I don't want to earn any money with my
Player, because I have written it for fun and for my own use,
but please LET ME KNOW, IF YOU FIND SOME BUGS!
If you really want to send me some money, then do it! I'll take it, and it
makes no difference how much! Maybe I'm the first Freeware-Coder, who earns
millions with his program. So help me being the first one and send only
sums bejond one million US-Dollar!!
If you have trouble with a module please send me a disk with it!
You'll get it back with a new version of STP!!
After I've got my A2000 with A2630, Kick 2.0 and ECS, I've tried to fix the
problems with Cache, Kick 2.0, Workbench 2.1 and all the other troubles with
this fucking fast machine!!
Many other Players have troubles with turboboards as fast as the
G-Force030 50/50 (Protracker 2.2-3.0 too!!), STP not!!
Since V1.33 all bugs on 68040CPU's are removed!
Version 1.1 is the first released Version. V1.0 was spread internal only!!
But who knows?! Perhaps you have a copy of 1.0!?!
What I'll never do:
-------------------
I'll never build in other playroutines then the one of Soundtracker
(and Clones), because there are so many good modules for ST (I've 140; 14 Mb)
and there are enough other players playing all formats.
Needed Hardware:
----------------
Any Amiga, at least Kick 1.2 and a very good stereo amplifier!!!!
Needed Software:
----------------
Many Soundtracker-modules!!
If you use MachIII please read the 'tactical hints using STP'!!!
Short discription:
------------------
D.E.R. ST-Player is a Soundtracker-Moduleplayer with some special features!
- 'Fire and Forget'-System (you will see what I mean)
- fantastic Channel-Analyser!
- 100% assembler
- STP makes an own Process!!!
- STP is full multitasking-compatible (except allocation of audio-cannels!)
- STP works with 1(and more)MByte chipmem! (Ok, that's a feature of Kick1.3!)
- STP should work on 680x0 processor cards!!
- plays Soundtracker V2.0-V2.6, Noisetracker V1.0-V2.0 and
Protracker -V2.3 Modules
- If the screen is in background Player needs no CPU-Time!(Except Playroutine!!)
- full filtercontrol
- Position- and Notecontrol
- Volumecontrol
- NonStop loading
- programmable
- also handles PP20- and FileImploder-files!!
since V1.22 also XPK-files
- Start from CLI and Workbench possible!!
- (FOR EXPERIENCED USERS ONLY!!: Player is able to run objectmodules)
Usage:
------
STP [DIR-Name | Module-Name] [-m][-sxxx][-r][-n][-j][-a][-f][-d][-tx] [?]
Instruction:
============
Start from CLI:
---------------
Start STP with or without options. If no arguments are given, STP
has following defaults:
- STP searches the file ENV:PlayerDir. There you can save the directory
where the modules are stored. If the file doesn't exist ->
- default directory is 'ST-00:modules'
- STP takes as much memory as he needs or he can catch.
- the songs are played alphabetically (A-Z) (German chars are sorted correct!)
- STP dosen't looks for 'mod.'-files only
- STP loads the next song when the current one is finished
- The 'B'-Cmd(Position-Jmp) of ST is enabled
- Auto-Fade is off
- Analysermode is set to high frequencies
- Timemode is set to normal positionview
Options:
? -> Shows helpscreen!!
-m -> Player takes only files beginning with 'mod.' (not case-sensitive!!!)
-sxxx -> Player uses only that amount of chipmem you have selected.
('xxx' means the amount in KByte!!!! (xxx*1024=amount in Bytes!
I'm living in europe and here we're calculating with 1024 not 1000))
Songs longer than 'xxx'-KByte won't be loaded.
-r -> Player will randomize the sequence.
-j -> disables the Position-Jump command from ST.
(Very nice option for songs with a endless loop)
-n -> Player tries to load the next song if the current has 3 patterns
left to play. It only works if you have enough Fast-Mem!!
-d -> Switches the Mode-Button to On-position
since V1.1:
-f -> Switches Auto-Fade On
since V1.3:
-tx -> TimeMode; x=0 normal
x=1 remaining Patterns
x=2 Time
You can start Player also with a filename. Then Player switches 'Repeat' on and
disables the 'Prev' and 'Next'-gadgets!!!
Start from Workbench:
---------------------
You can define a tooltype called 'SONGDIR'. STP loads all songs in this
directory!!!
1. Click the STP-Icon once
2. Select 'Info' (or Information in Kick2.0) in the Workbench-Menu
3. Click on 'ADD' in the 'TOOL TYPES'-Bar
4. Type 'SONGDIR=' and the full directory-name you want. e.g.:'dh1:modules'
'modules' only is not enough!!!! (The tooltype itself is casesensitve!
Please type them all in upper case!
5. Now click on 'save'
6. doubleclick the STP-Icon and enjoy the music!!!
If you didn't spezify a SONGDIR-Tooltype, Player searches also for the
'ENV:PlayerDir'-File. If available he uses it automatically!
I've included some other Tooltypes, too!! Defaults in ().
RANDOM -> ON/(OFF); e.g.:'RANDOM=ON';
ANALYZER -> (ON)/OFF;
NONSTOP -> ON/(OFF);
NOPOSJMP -> ON/(OFF);
MODONLY -> ON/(OFF);
AMODE -> ON/(OFF); (up to Version V1.24->MODE)
MAXCHIP : sets maximum usage of CHIP-RAM!!
e.g.:'MAXCHIP=200' -> use 200K maximum
since V1.1:
AUTOFADE -> ON/(OFF);
since V1.3:
TIMEMODE -> (0)/1/2; see CLI-Option <-tx>
While Player is running:
------------------------
If no ENV-File and no Dir-name was given, you first must turn the STP on!!
Then STP asks you for a directory-path and reads this directory.
Since V1.1 I use the ASL-Request (Kick 2.0 only)
Now STP loads the first module. (Display shows 'loading Song...')
Then STP starts playing.......
Now you have the following possibilities:
Filter-control:
---------------
These are the two switches on the right side from the Volume-control.
On Auto <- Function if Switch is pressed
Switch -> ++ || ++ <- Switch
Off Manual <- Function if Switch is released
^
Lamp
In the 'Manual'-position (default) the 'E'-command from Soundtracker is
ignored (but internal stored!!) and the Filter is set by the on/off-switch.
If switched to 'Auto' the filter is set as given from the last ST-command.
The other switch is now disabled and the filtercontrol is given back to the
playroutine!!
Position- and Note-control:
---------------------------
Below the display you can notice two pairs of gadgets. ( < > )
The left pair controls the position and the right pair controls the note.
The position-gadgets have a little delay!!
Try it and you will know how to use them.
Volume-control:
----------------
With the proportinal gadget you can control the volume.
Song-control:
--------------
On the right side of the Player are four gadgets.
|<,>| : Load next,previous song in sequence.
Stop : Will stop playing. Now you can try to open the Player.
Play : Play/Pause toggle!
Below the display you notice two other switches:
RepS : Repeat the song. As long as Repeat is highlighted in the display
Player repeats the song.
Select : Klick on it. Now you can see a '>' in front of the current song.
Use the |< and >| gadgets to select a song.
Since V1.1 this buttons are repeated in this case!
If you have found the right name press the play-gadget and Player
reads the song at once.
Sequence-control:
------------------
STP is full programmable.
Press the "Prog"-gadget
You are now in the Program-Mode. (shown in the display!!)
Choose a song with the |< and >| gadgets.
Now you have the following possibilities:
'Prog' : Toggles between programmed and cleared-status.
stored in the sequence -> you see 'xx P'<- Nr. in the sequence
cleared -> ' C'
'Select': Select all songs
'Random': randomize the current sequence
'Stop' : Clear the program and cancel the Program-Mode
'Play' : Start playing with the first song in sequence
How to clear a program:
-----------------------
Press the Stop-Button twice
Random (V1.1):
--------------
Random is now available in normal play-mode.
Simply press the RANDOM-Button and a program will be initialised!
Auto-Fade (V1.1):
-----------------
This means, player fades the volume on the last Pattern to zero.
This is usefull, if an endless song is played!
Time (V1.3):
------------
You can toggle between three modes
1.) Normal mode
2.) Remaining patterns and notes (Thanks to Andreas Kirchwitz from Berlin)
3.) Time mode.
How to change directory:
------------------------
Press Stop and then Open (on the disc-drawer)
Now Player asks again which directory you want!!
V1.1: If your machine works under Kickstart 2.0, you can make this with the
ASL-Requester!
How to use the Analyser:
------------------------
There are four buttons!!
++ <- Mode
++ <- Analyser On/Off
++ <- VU-Meter On/Off
++++ <- Power-Switch
Mode: I calculate which part of a sample is played each vertical blank.
Each of the 4 windows shows 40 values of the actual part.
The parts are often larger then 40 bytes and so i've found two
ways to show them
Released Button:
I show the first 40 bytes of the actual part then i add the
length of the remaining part.
(Good to display high frequencies!)
Pressed Button:
I calculate the length of the part diveded by 40. Now I show
the first byte then a add the result of the upper expression.
Then i show the next byte and so on...
(Good to display low frequencies)
Information for musicians:
--------------------------
I have included the information-system from IntuiTracker!!
You can use the samplenames for messages.
Each message (samplename) starting with '#' is displayed.
Player stops at the first samplename which begins not with '#'!!
tactical hints using STP:
-------------------------
Player checks each file if it's a ST-Module.
It's possible (0.0001%) that the check-routine failes and he tries to play
a file which is not a ST-Module! Please remove this file from your
directory for safe usage!!
Using powerpacked Files requires the PowerPacker.library in libs: !!!
For XPK you need the xpkmaster.library and at least one sublibrary
If you have only 512KB ChipMem use the -s option (MAXCHIP) to leave free Mem!
e.g.: -s200 (I've always used this one, but now I've 1MB-Chip!!)
STP always allocates the size of the largest modules, because there are
many troubles always freeing a block and allocating the next one.
Memory get's more and more fragmented, until STP is not longer able
to allocate the songmem!! I think this solution is better for longtime-
usage and always remember Amigas with fewer then 1MB-Chipmem are ...
(Try Intuitracker, he uses the other way. After about 10 Songs it's over!!)
If you are running MACHIII V3.0 get a version V3.1 or higher, cause of a
major bug in V3.0. Every time you will run Player while MACHIII is running,
your machine will stop every activity without a guru!!
First I've thought that it was my fault, but after it works with V3.1 ...
STP needs much time in his VB-interuptroutine. It's possible that you get
in trouble running other programms using VB-Int's too. (I haven't recognized
any problems of this nature, but it's possible!!).
AND NOW SOME HINTS FOR VERY EXPERIENCED USERS ONLY!
---------------------------------------------------
STP is able to run objectmodules! But take care, it's up to the module
to work with STP!!!
You ask why? There are many other good soundprograms available on AMIGA
(for example SoundFX,TFMX..). If you got an executeable file which playes the
song rename it into 'run.???????'. When STP recognizes such a file
he tries to load it with 'loadseg()' and jumps directly into it's code!!
Now it's your problem how you stop playing and return to STP!
There is another problem with this feature!
I have to give back all my memory starting the Obj-Mod.
And after all I must get it back!! Do you know what I mean?!?!
No! It's quiet simple!! It's possible that there isn't enough memory left
after this action! STP will then quit playing!!!
That's why I'm always allocating the length of the largest Module!!!!
Because that's the only way to be sure not running out of memory!
So please hold your memoryconsumtion low (use -s option. Usually I use -s200!!)
I have found a new problem since STP makes an own precess!!!
Some playroutines test if the process is started from CLI. If not they wait
for a WB-Message!!! It's on you to remove this part of the code!!
A little hint: look out for a FindTask(0L) (sub.l a1,a1; jsr -294(a6))
then look if the programm tests 172(a?) of the process-structure.
Remove exactly this test! But be careful. The code must always go the way
it goes started from CLI!
But after all that troubleshooting I have to say you: I did it!!!
Informations about the Programm:
--------------------------------
Start of coding: April 1990
SourceCode: 137kB - pure assembler-source (~8100 lines)
ObjectCode: 35kB
Assembler: ASM-One (in the beginning Masterseka 1.80)
GFX: 45kB - 3 Planes,Hires(640*170) (also pixled by me)
Warning:
--------
I give no garantees using Player.
System crashes and other unkown bugs are possible!!
Use Player on your own risk!!!
Player only reads data! It's impossible that Player
destroys data on a Disk or HD. (only in your RAM, HeHeHe!!)
All my friends are using Player since Summer 1990 with their HD and
they have no problems!!
But nobody is perfect!! And my name is certainly not 'Nobody'!
So please let me know all the bugs you notice!!
Last but not least thanks to:
Michael Matzl(Mad Matz), Reinhard Franz(Killersoft),
Erwin Kloibhofer(Hendl-Schnitzel), Stefan Kainz(Elchi),
Dieter Henkel, Peter Scherbaum
and some members from the 'D.E.R. Computerclub'
for beta-testing, bugreports, good ideas and very good friendship.
all of you out there in the whole world for using my STP.
and always remember: it's FREEWARE so spread it around the world.
to all of you sending me bugreports, ideas and funny mails.
//
Commodore for development of the \X/AMIGA.
Contacts:
---------
write to: Wolfgang BREYHA
Großer Ring 42
1130 Vienna
Austria (not Australia, no Kangaroos!!
we are those with Lipizaner, you know)
E-Mail: ookummer@swwwnext.tuwien.ac.at
Boys and girls, I *love* mail!!